Introduktion til programmering

Introduktion

Programmering kan godt virke uoverskueligt at give sig i kast med, men faktisk er der den samme grundlogik bag de forskellige programmeringssprog, og hvis du først får fod på den, er det forholdsvist enkelt at overføre fra det ene sprog eller teknologi til andre.

Der findes rigtig mange velegnede begynderressourcer, også til børn, som sigter efter dette. Et godt sted at starte er fx Hour of Code, som har mange små tutorials, der alle introducerer grundlæggende begreber undervejs: 

Se mere på: https://code.org/learn

Vigtige begreber

Nedenfor ser du en kort beskrivelse af forskellige sproglige udtryk for programmeringselementer. Hvis du er helt ny til programmering, kan forklaringerne virke svære, men vend evt. tilbage til beskrivelserne, når du har læst kapitlet "Forstå logikken i programmering" s. 31-44 i "Programmering i praksis" og har arbejdet med forskellige små programmeringsopgaver i undervisningen, så du har nogle konkrete eksempler, som du kan overføre beskrivelserne til. 

Algoritmer, sekvenser og sætninger:

En algoritme er det, programmet gør trin for trin, altså en slags opskrift for at programmet kan løse en given opgave. En algoritme består som regel af forskellige sekvenser, som er en serie af instruktioner eller instruktionsblokke, som skal udføres efter hinanden.

kontrolstrukturer

De enkelte instruktioner i en algoritme kaldes sætninger eller kommandoer. Algoritmer benytter sig af forskellige kontolstrukturer. De vigtigste er:

SEKVENTIEL KONTROL

Kommandoer følges i den angivne rækkefølge. Første kommando skal udføres, før programmet går videre til den næste.

SAMMENSÆTNING

Kommandoer sammen-sættes til en enkelt blok, fx når variable defineres ved start af programmet (sæt point til, sæt liv til, osv. eller sæt liv til x, hvis y rører x, sæt x = x-1

UDVÆLGELSE

En kommando udvælges blandt flere muligheder: if (logisk/ boolsk udtryk); noget er enten sandt eller falskt)...else

GENTAGELSE

Fx løkker. En kommando gentages et antal gange. Antallet af gentagelser kan styres af et angivet fast tal, men styres også ofte af et logisk udtryk

mere om variable

Variabelerklæringer, hvor man opretter en variabel og angiver dens datatype. En variabel kan ændre sig og kaldes også nogle gange for et parameter. En datatype kan fx være Numbers - eks. heltal (integers), decimaltal (floats) - eller tekst (string). 

Tildelinger, (eng.assignment), hvor man giver en variabel en bestemt dataværdi. Når en variabel får tildelt en bestemt værdi, kaldes den enten et “aktuelt parameter” eller et ”argument”.

I forbindelse med data taler man også om lister og arrays. Begge dele er måder at organisere flere dataforekomster på. Læs mere herom på undersiden om data og datatyper.

mere om udvælgelse

Udvælgelse kaldes også betingelser. Her afgør et sandhedsudtryk, om programmet skal udføre den ene eller anden gruppe sætninger.

Betingelsen opstår fx ved brug af et if-statement efterfulgt af then og ofte også et else-statement. I et sandhedsudtryk er der kun 2 værdier (sandt/falsk), fx ”if touches colour red → turn right, else→ turn left”. Her røres der enten vil farven rød eller ikke. Den type udtryk kalder man også for boolske udtryk (eng. Booleans), og de regnes også for en datatype.


En betingelse kan medføre to ting: Enten forgrening eller iteration, dvs. at enten "går programmet videre af en ud af to mulige veje", eller også gentager programmet en bestemt handling, indtil betingelsen er opfyldt.

mere om gentagelse

Løkker: Hvis en gruppe sætninger skal udføres flere gange, indfører man en løkke i programmet.(eng. Loops). En løkke kan angives med forskellige udsagn, fx:

Funktioner-/procedurer og funktions-/procedurekald. Her er en gruppe sammenhørende sætninger/en sekvens er blevet samlet i en selvstændig programdel, som så kaldes, dvs. aktiveres inde i programmet. Det bruges fx, når man har brug for at udføre den samme sekvens flere steder i et program eller når brugeren beder om det.

Forskellen på funktioner og procedurer er, at en funktion returnerer et tal, når den modtager et input, mens en procedure returnerer en handling. I begynderprogrammering er forskellen ikke så vigtig - især ikke, fordi nogle programmeringssprog bruger begrebet "funktioner" om det hele. Der er også sprog som bruger helt andre ord, fx (sub)rutiner eller metoder.

operatorer

Programmeringssprog benytter en række operatorer for at kunne udtrykke logik og relationer mellem de enkelte elementer. Disse kan opdeles i matematiske og logiske operatorer.

Matematiske operatorer er fx lig med (=), ikke lig med (!=), større end (>), mindre end (<), lige med eller større end (=>), lig med eller mindre end (=<). Disse bruges fx i et spil, hvor næste level skal starte, når point = 100 eller slutte, når liv = 0.

Logiske operatorer kan sammenkoble flere betingelser, fx bruges "AND" (&&), hvis to betingelser skal være til stede, før noget sker, eller "OR" (II), hvis blot en af betingelserne skal opfyldes, inden noget sker. Logiske operatorer kan også bestemme, at noget sker, hvis en betingelse ikke er opfyldt. Det gøres med "NOT" (!)

Syntaks:

Tekstprogrammeringssprog har oftest en fast definition for, hvad der er muligt at udtrykke i sproget, og hvordan det gøres. Syntaks er de regler for form/grammatik, som sproget har, fx en parantetisk BEGIN…END struktur, brug af citationstegn, kolon, semikolon, store/små bogstaver, osv.

Fejlsøgning (aflusning/debugging):

Proces, hvor man søger efter og retter evt. fejl

ressourcer til tekstprogrammering

Klik på billedet for at komme til underside